package com.darren.euc.service;

import java.util.List;

import com.darren.euc.entity.PageBean;
import com.darren.euc.entity.Role;

import net.sf.json.JSONObject;

public interface RoleService{
    
	public Role save(Role role);
	
	public Role update(Role role);
    
	public void deleteById(Integer id);
	
	public List<Role> getAll();
	
	public List<Role> getRoleType();
    
    public List<Role> getRoleByRoleName(String roleName);
    
    public List<Role> getRoleByRoleNameExcludeCurrentId(String roleName,Integer roleId);
    
    public PageBean queryForPageBySQL(String sql, Integer pageSize, Integer currentPage,Object... objs);
	
    public PageBean queryForPageUseHQLByRoleName(String roleName,Integer pageSize, Integer currentPage);
        
    public PageBean queryForPageUseHQL(JSONObject requestJson,Integer pageSize, Integer currentPage);
    
    public int deleteRoleFunctionByRoleId(Integer roleId);

}